package org.hydrakyoufeng.stuplatform.service;


import org.hydrakyoufeng.stuplatform.dto.*;
import org.hydrakyoufeng.stuplatform.utils.ResultEntity;
import org.hydrakyoufeng.stuplatform.vo.CourseListVO;

import java.util.List;

public interface CourseService {

    ResultEntity queryList(CourseListDTO courseListDTO) throws Exception;

    ResultEntity queryListInClass(Integer classId) throws Exception;

    ResultEntity queryListNotInClass(CourseListDTO courseListDTO) throws Exception;

    ResultEntity insert(CourseDTO courseDTO) throws Exception;

    ResultEntity update(CourseDTO courseDTO) throws Exception;

    ResultEntity delete(Integer id);

    /**
     * 查询导出excel时的列表数据
     * @param courseListDTO
     * @return
     */
    List<CourseListVO> getExcel(CourseListDTO courseListDTO);

    ResultEntity queryUserList(CourseUserListDTO courseUserListDTO);

    ResultEntity updateUserOperate(CourseUserOperateDTO courseUserOperateDTO);

    /**
     * 前端用户提交课程纠错信息
     * @param dto
     * @return
     */
    ResultEntity insertCorrecting(CorrectingUserDTO dto);

    /**
     * 管理员查询纠错列表信息
     * @param dto
     * @return
     */
    ResultEntity queryCorrectingList(CorrectingListDTO dto);

    /**
     * 管理员审核纠错信息
     * @param dto
     * @return
     */
    ResultEntity updateCorrecting(CorrectingDTO dto);
}
